<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>DiscontinuousGalerkin: TriangleElementManipulation Module Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">DiscontinuousGalerkin
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('class_triangle_element_manipulation.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a>  </div>
  <div class="headertitle">
<div class="title">TriangleElementManipulation Module Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="TriangleElementManipulation" -->
<p><a href="module_triangle_element_manipulation-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">type &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Triangular Element  The element is not aware of its Neighbours. Is up to the grid decide which is neighbour of which The Solution of the Discontinuous Finite Element formulation is by Sucessive Substitution, which is equivalent to iteratively solve a block-diagonal global matrix. This kind of solution is well-suited to parallel environments with fast interprocess communication systems. Due to this choice of solution procedures the local values of the Degrees of Freedom must be separated into two categories, the trying value and the committed value.  <a href="struct_triangle_element_manipulation_1_1_triangle_element.html#details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a4adc13ead0bf8abc7f18ad46f7bbf483">SolutionErrorRange</a> (this)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the Error range estimation for the current Element.  <a href="#a4adc13ead0bf8abc7f18ad46f7bbf483"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#aa106639c5dfecac6346f53342be11ecc">SetNodesTriangularElement</a> (this, Node1, Node2, Node3)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Nodes Indexes of a Triangular Element These are the nodes of the grid.  <a href="#aa106639c5dfecac6346f53342be11ecc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a95afdc8652309cbfcb2761a27eedbdbc">SetMatrixTriangleElement</a> (this, X, ThermCond, Stabilization)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Groups the individual constructions of the several components of the Linear Systems Matrix.  <a href="#a95afdc8652309cbfcb2761a27eedbdbc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e7a4c7fb3ec32e4f4c9160026a56291"></a><!-- doxytag: member="TriangleElementManipulation::SetVectorTriangleElement" ref="a2e7a4c7fb3ec32e4f4c9160026a56291" args="(this, X, Neighbours, ThermCond, Stabilization)" -->
subroutine&#160;</td><td class="memItemRight" valign="bottom"><b>SetVectorTriangleElement</b> (this, X, Neighbours, ThermCond, Stabilization)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea4c4dc8ae606e03f08045ca68c498b9"></a><!-- doxytag: member="TriangleElementManipulation::SetAllNeighboursNumbering" ref="aea4c4dc8ae606e03f08045ca68c498b9" args="(this, Neighbours)" -->
subroutine&#160;</td><td class="memItemRight" valign="bottom"><b>SetAllNeighboursNumbering</b> (this, Neighbours)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada21f9c637fff1fb8ee30adf71a51bdf"></a><!-- doxytag: member="TriangleElementManipulation::SetNeighbourNumbering" ref="ada21f9c637fff1fb8ee30adf71a51bdf" args="(this, i, Neighbour)" -->
subroutine&#160;</td><td class="memItemRight" valign="bottom"><b>SetNeighbourNumbering</b> (this, i, Neighbour)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ccb0c13110096431d8d245525bd292c"></a><!-- doxytag: member="TriangleElementManipulation::VectorRenumber" ref="a7ccb0c13110096431d8d245525bd292c" args="(this, i)" -->
pure function&#160;</td><td class="memItemRight" valign="bottom"><b>VectorRenumber</b> (this, i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a136c5300b34d7e30bd3447d93db41568">TriangularPhi</a> (i, eta)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Base functions on Triangular Linear coordinate $( , ,  )$ system.  <a href="#a136c5300b34d7e30bd3447d93db41568"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a1e29b98dc1fea11e901dff6a4e7594c7">LinearPhi</a> (i, eta)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Base functions on single variable, or linear, system.  <a href="#a1e29b98dc1fea11e901dff6a4e7594c7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#af1b5756d5682c4682031ec74887ad4cd">JacobianLength</a> (X, indexes)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the Jacobian over the 1-D Boundary, or side of the Triangle, of integrals performed.  <a href="#af1b5756d5682c4682031ec74887ad4cd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function, <br class="typebreak"/>
dimension(nnodes, nnodes)&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#ac185ecc4fe338d47d0cf88162bc6616d">MatrixH_l</a> (this, X, orientation)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a analytically calculated Matrix which comprises of the Temperature contribution within the element area.  <a href="#ac185ecc4fe338d47d0cf88162bc6616d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a59d626ac2b4f31b137b8769174c2fda7">MatrixE_lr_i_km</a> (this, l, r, i, k, m, X, ThermCond)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a element of a Matrix $E_{lr,i}$, or a Matrix $E_{lr,i,B}$ Element boundary thermal conductivity contribution on side $i$ To gerenate a $E_{lr,i,B}$ matrix usa a negative Stabilization parameter.  <a href="#a59d626ac2b4f31b137b8769174c2fda7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a4e5a644bc9dd3b445a5a70933462009f">MatrixH_l_i_km</a> (this, l, i, k, m, X, ThermCond)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a Component cell of the Matrix $H_{l,i}$ Calculated over the side $i$ of the element.  <a href="#a4e5a644bc9dd3b445a5a70933462009f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">real(kind=8) function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a0575602dd755d5921440ad74164e9580">MatrixJ_l_i_km</a> (this, l, i, k, m, X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a component of the Matrix $J_{l,i}$ calculated over the side $i$ of the element.  <a href="#a0575602dd755d5921440ad74164e9580"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function, <br class="typebreak"/>
dimension(nnodes, nnodes)&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#ac630f7fcab3523f4fb976c622636747f">MatrixC_i</a> (i, X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Analitically calculated Matrix component of the block-matrices $G_{T,i}$ and $G_{T,i,B}$.  <a href="#ac630f7fcab3523f4fb976c622636747f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real function&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a173e3a8fdcf52d64275ad9047e818304">S</a> (X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Auxiliary function S, which gives the ponderation value for the calculations of the fixed-form, or analytically calculated matrices on the triangle.  <a href="#a173e3a8fdcf52d64275ad9047e818304"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">pure real(kind=8) function, <br class="typebreak"/>
dimension(nnodes, nnodes)&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a3f66f1675de0d2c3b5b13306ba23db18">Matrix_E</a> (X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the Elementary matrix E, refered to the block-diagonal of the Stiffness local Matrix.  <a href="#a3f66f1675de0d2c3b5b13306ba23db18"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a0c101f6a5e3897ce116e8961586b7a65">SetMatricesE</a> (Matrix, X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the E central matrices of the local matrix Matrix of the inner element contribution relative to the heat flux The E matrices are dependent only of a determinant obtained from the Vertices Coordinates The E matrices compond the diagonal blocks of the first assembly.  <a href="#a0c101f6a5e3897ce116e8961586b7a65"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a586bca4be8eb2af770295c4e1fe5c8e5">SetMatricesH_l</a> (this, Matrix, X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the $H_k$ matrix of the local matrix, $k = x,y$ Matrix of the inner element contribution relative to Temperature.  <a href="#a586bca4be8eb2af770295c4e1fe5c8e5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a86eb931296af45d4a7319dc5bda571c0">SetMatricesJ_l</a> (this, Matrix, X)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the $J_k$ matrix of the local matrix, $k = x,y$ Matrix of the inner element contribution relative to Temperature.  <a href="#a86eb931296af45d4a7319dc5bda571c0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a53e88b694fc36f2bd211600c5ac03fd8">SetMatricesE_lr_i</a> (this, Matrix, X, ThermCond, Stabilization)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the $E_{lr,i}$ matrices comprising the element contribuitions to the Stiffness matrix on every side of the element.  <a href="#a53e88b694fc36f2bd211600c5ac03fd8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a50b3ef9cd62514ddc19822d0a23cf0c1">SetMatricesH_l_B_i</a> (this, Vector, Neighbours, X, Stabilization, ThermCond)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the matrices $H_{l,B,i}$ comprising the Neighbours contribution to the independent constant vector due to the temperature effect on the flux.  <a href="#a50b3ef9cd62514ddc19822d0a23cf0c1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a27fefeca56fced4aa525bf980feb5659">SetMatricesJ_l_B_i</a> (this, Vector, Neighbours, X, Stabilization)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the matrices $J_{l,B,i}$ comprising the Neighbours contribution to the independent constant vector due to the flux effect on the temperature.  <a href="#a27fefeca56fced4aa525bf980feb5659"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a67894321bcfc0e9b8afaf83113f1160e">SetMatrixG_T_B_i</a> (Vector, Neighbours, X, Stabilization)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the matrices $G_{l,B,i}$ comprising the Neighbours contribution to the independent constant vector due to the flux effect on the temperature.  <a href="#a67894321bcfc0e9b8afaf83113f1160e"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba2a110042aead238e29e2fac1f6a260"></a><!-- doxytag: member="TriangleElementManipulation::nNodes" ref="aba2a110042aead238e29e2fac1f6a260" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>nNodes</b> = 3</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a401f39bb84c345cd5d2bf20933bf13fc"></a><!-- doxytag: member="TriangleElementManipulation::probDim" ref="a401f39bb84c345cd5d2bf20933bf13fc" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a401f39bb84c345cd5d2bf20933bf13fc">probDim</a> = 2</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Problem Dimension | Plane Problem. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c825e3823c299744caf96bf1d4374e0"></a><!-- doxytag: member="TriangleElementManipulation::MatrixSize" ref="a0c825e3823c299744caf96bf1d4374e0" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a0c825e3823c299744caf96bf1d4374e0">MatrixSize</a> = nNodes * (<a class="el" href="class_triangle_element_manipulation.html#a401f39bb84c345cd5d2bf20933bf13fc">probDim</a> + 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Heat Fluxes (each dimension) and Temperature problem. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a34b4bd95bc147657022b75b2c048b7f8"></a><!-- doxytag: member="TriangleElementManipulation::XAxis" ref="a34b4bd95bc147657022b75b2c048b7f8" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>XAxis</b> = 1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae264321f9e1208f703601c23b996db78"></a><!-- doxytag: member="TriangleElementManipulation::YAxis" ref="ae264321f9e1208f703601c23b996db78" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>YAxis</b> = 2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cd8a24ae73b1c803c867b018335c805"></a><!-- doxytag: member="TriangleElementManipulation::HeatFluxX_Initial" ref="a6cd8a24ae73b1c803c867b018335c805" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a6cd8a24ae73b1c803c867b018335c805">HeatFluxX_Initial</a> = 1</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Keeping track of Degrees of Freedom index meaning. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af8966bdce82d9c30732a9c32140e525b"></a><!-- doxytag: member="TriangleElementManipulation::HeatFluxX_Final" ref="af8966bdce82d9c30732a9c32140e525b" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>HeatFluxX_Final</b> = <a class="el" href="class_triangle_element_manipulation.html#a6cd8a24ae73b1c803c867b018335c805">HeatFluxX_Initial</a> + nNodes - 1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e46edc8a32c2ba1d60b05a232feff84"></a><!-- doxytag: member="TriangleElementManipulation::HeatFluxY_Initial" ref="a4e46edc8a32c2ba1d60b05a232feff84" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>HeatFluxY_Initial</b> = HeatFluxX_Final + 1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33d529a82b57957b55eb8a48727b8fe1"></a><!-- doxytag: member="TriangleElementManipulation::HeatFluxY_Final" ref="a33d529a82b57957b55eb8a48727b8fe1" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>HeatFluxY_Final</b> = HeatFluxY_Initial + nNodes - 1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57655d22ee86a3c16a3a462d7e8b7f83"></a><!-- doxytag: member="TriangleElementManipulation::Temperature_Initial" ref="a57655d22ee86a3c16a3a462d7e8b7f83" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>Temperature_Initial</b> = HeatFluxY_Final + 1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaadae2647bae223a85d64b5d15707e88"></a><!-- doxytag: member="TriangleElementManipulation::Temperature_Final" ref="aaadae2647bae223a85d64b5d15707e88" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>Temperature_Final</b> = Temperature_Initial + nNodes -1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b89811f307e276a2adb75f9728b2c41"></a><!-- doxytag: member="TriangleElementManipulation::Dof_Values" ref="a0b89811f307e276a2adb75f9728b2c41" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><b>Dof_Values</b> = 2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2a2732722f2a44fc3f1abf0c74a9d53"></a><!-- doxytag: member="TriangleElementManipulation::Dof_Try" ref="ab2a2732722f2a44fc3f1abf0c74a9d53" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#ab2a2732722f2a44fc3f1abf0c74a9d53">Dof_Try</a> = 1</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Try values for the element DoF. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56e39a984dfa999d9aae6f83240a3bf1"></a><!-- doxytag: member="TriangleElementManipulation::Dof_Commit" ref="a56e39a984dfa999d9aae6f83240a3bf1" args="" -->
integer, parameter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_triangle_element_manipulation.html#a56e39a984dfa999d9aae6f83240a3bf1">Dof_Commit</a> = 2</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Commit values for the element DoF. <br/></td></tr>
</table>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="af1b5756d5682c4682031ec74887ad4cd"></a><!-- doxytag: member="TriangleElementManipulation::JacobianLength" ref="af1b5756d5682c4682031ec74887ad4cd" args="(X, indexes)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function TriangleElementManipulation::JacobianLength </td>
          <td>(</td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, dimension(3), intent(in)&#160;</td>
          <td class="paramname"><em>indexes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the Jacobian over the 1-D Boundary, or side of the Triangle, of integrals performed. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">X</td><td>- the Nodes Coordinates </td></tr>
    <tr><td class="paramname">indexes</td><td>- 3D integer vector comprising the indexex on the rotation of sides on which calculate the Jacobian </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>v - double precision value of the Jacobian </dd></dl>

</div>
</div>
<a class="anchor" id="a1e29b98dc1fea11e901dff6a4e7594c7"></a><!-- doxytag: member="TriangleElementManipulation::LinearPhi" ref="a1e29b98dc1fea11e901dff6a4e7594c7" args="(i, eta)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function TriangleElementManipulation::LinearPhi </td>
          <td>(</td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), intent(in)&#160;</td>
          <td class="paramname"><em>eta</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Base functions on single variable, or linear, system. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>- the index of the base function </td></tr>
    <tr><td class="paramname">eta</td><td>- double precision scalar point on which the function is calculated </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>v - double precision scalar calculated value </dd></dl>

</div>
</div>
<a class="anchor" id="a3f66f1675de0d2c3b5b13306ba23db18"></a><!-- doxytag: member="TriangleElementManipulation::Matrix_E" ref="a3f66f1675de0d2c3b5b13306ba23db18" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function, dimension(nnodes,nnodes) TriangleElementManipulation::Matrix_E </td>
          <td>(</td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the Elementary matrix E, refered to the block-diagonal of the Stiffness local Matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">X</td><td>- the Nodes coordinates </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>local - The Entire Matrix </dd></dl>

</div>
</div>
<a class="anchor" id="ac630f7fcab3523f4fb976c622636747f"></a><!-- doxytag: member="TriangleElementManipulation::MatrixC_i" ref="ac630f7fcab3523f4fb976c622636747f" args="(i, X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function, dimension(nnodes,nnodes) TriangleElementManipulation::MatrixC_i </td>
          <td>(</td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Analitically calculated Matrix component of the block-matrices $G_{T,i}$ and $G_{T,i,B}$. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>- the side on which the calculation is being performed </td></tr>
    <tr><td class="paramname">X</td><td>- The Nodes Coordinates </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>C - The Matrix itself </dd></dl>

</div>
</div>
<a class="anchor" id="a59d626ac2b4f31b137b8769174c2fda7"></a><!-- doxytag: member="TriangleElementManipulation::MatrixE_lr_i_km" ref="a59d626ac2b4f31b137b8769174c2fda7" args="(this, l, r, i, k, m, X, ThermCond)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function TriangleElementManipulation::MatrixE_lr_i_km </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(in)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>l</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>r</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>k</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,2), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>ThermCond</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Generate a element of a Matrix $E_{lr,i}$, or a Matrix $E_{lr,i,B}$ Element boundary thermal conductivity contribution on side $i$ To gerenate a $E_{lr,i,B}$ matrix usa a negative Stabilization parameter. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>-&gt; the element </td></tr>
    <tr><td class="paramname">l,r</td><td>-&gt; ranges from x to y, each </td></tr>
    <tr><td class="paramname">i</td><td>-&gt; the boundary </td></tr>
    <tr><td class="paramname">k,m</td><td>-&gt; Matrix internal indexes </td></tr>
    <tr><td class="paramname">ThermCond</td><td>-&gt; Thermal Conductivity. Function which defines the Thermal Conductivity </td></tr>
    <tr><td class="paramname">Stabilization</td><td>-&gt; Stabilization Parameter </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>cell - double precision scalar</dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>Planar Element </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac185ecc4fe338d47d0cf88162bc6616d"></a><!-- doxytag: member="TriangleElementManipulation::MatrixH_l" ref="ac185ecc4fe338d47d0cf88162bc6616d" args="(this, X, orientation)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function, dimension(nnodes,nnodes) TriangleElementManipulation::MatrixH_l </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(in)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>orientation</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a analytically calculated Matrix which comprises of the Temperature contribution within the element area. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- the Element structure </td></tr>
    <tr><td class="paramname">X</td><td>- the nodes coordinates </td></tr>
    <tr><td class="paramname">orientation</td><td>- the Axis representing the Allocation of the Matrix </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>local - The Analytically calculated matrix </dd></dl>

</div>
</div>
<a class="anchor" id="a4e5a644bc9dd3b445a5a70933462009f"></a><!-- doxytag: member="TriangleElementManipulation::MatrixH_l_i_km" ref="a4e5a644bc9dd3b445a5a70933462009f" args="(this, l, i, k, m, X, ThermCond)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function TriangleElementManipulation::MatrixH_l_i_km </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(in)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>l</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>k</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,2), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>ThermCond</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a Component cell of the Matrix $H_{l,i}$ Calculated over the side $i$ of the element. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- the Element Structure </td></tr>
    <tr><td class="paramname">l</td><td>- the orientation Axis of the Calculated Matrix </td></tr>
    <tr><td class="paramname">i</td><td>- the side on which this calculations are being performed </td></tr>
    <tr><td class="paramname">k</td><td>- the local matrix $H_{l,i}$ line of the component </td></tr>
    <tr><td class="paramname">m</td><td>- the local matrix $H_{l,i}$ column of the component </td></tr>
    <tr><td class="paramname">X</td><td>- the Nodes components </td></tr>
    <tr><td class="paramname">ThermCond</td><td>- the function defining the Thermal Conductivity at node $n$ depending, only, on temperature $T_n$ </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>cell - double precision scalar</dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>Planar Element </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a0575602dd755d5921440ad74164e9580"></a><!-- doxytag: member="TriangleElementManipulation::MatrixJ_l_i_km" ref="a0575602dd755d5921440ad74164e9580" args="(this, l, i, k, m, X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">real(kind=8) function TriangleElementManipulation::MatrixJ_l_i_km </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>l</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>k</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,2), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a component of the Matrix $J_{l,i}$ calculated over the side $i$ of the element. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- the Element Structure </td></tr>
    <tr><td class="paramname">l</td><td>- the orientation Axis of the Calculated Matrix </td></tr>
    <tr><td class="paramname">i</td><td>- the side on which this calculations are being performed </td></tr>
    <tr><td class="paramname">k</td><td>- the local matrix $J_{l,i}$ line of the component </td></tr>
    <tr><td class="paramname">m</td><td>- the local matrix $J_{l,i}$ column of the component </td></tr>
    <tr><td class="paramname">X</td><td>- the Nodes components </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>cell - double precision scalar</dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>Planar Element </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a173e3a8fdcf52d64275ad9047e818304"></a><!-- doxytag: member="TriangleElementManipulation::S" ref="a173e3a8fdcf52d64275ad9047e818304" args="(X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real function TriangleElementManipulation::S </td>
          <td>(</td>
          <td class="paramtype">real(kind=8), dimension(nnodes, probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Auxiliary function S, which gives the ponderation value for the calculations of the fixed-form, or analytically calculated matrices on the triangle. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">X</td><td>- the Nodes coordinates </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>local - the value </dd></dl>

</div>
</div>
<a class="anchor" id="a0c101f6a5e3897ce116e8961586b7a65"></a><!-- doxytag: member="TriangleElementManipulation::SetMatricesE" ref="a0c101f6a5e3897ce116e8961586b7a65" args="(Matrix, X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatricesE </td>
          <td>(</td>
          <td class="paramtype">real(kind=8), dimension(matrixsize,matrixsize), intent(out)&#160;</td>
          <td class="paramname"><em>Matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the E central matrices of the local matrix Matrix of the inner element contribution relative to the heat flux The E matrices are dependent only of a determinant obtained from the Vertices Coordinates The E matrices compond the diagonal blocks of the first assembly. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- The Triangle Element itself </td></tr>
    <tr><td class="paramname">S</td><td>- The determinant parameter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a53e88b694fc36f2bd211600c5ac03fd8"></a><!-- doxytag: member="TriangleElementManipulation::SetMatricesE_lr_i" ref="a53e88b694fc36f2bd211600c5ac03fd8" args="(this, Matrix, X, ThermCond, Stabilization)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatricesE_lr_i </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, dimension(matrixsize,matrixsize+1), intent(inout)&#160;</td>
          <td class="paramname"><em>Matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,2), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>ThermCond</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), intent(in)&#160;</td>
          <td class="paramname"><em>Stabilization</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the $E_{lr,i}$ matrices comprising the element contribuitions to the Stiffness matrix on every side of the element. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">this</td><td>- the element on which the calculations will be performed </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Matrix</td><td>- the Matrix on which the calculations will be recorded. It can be the element local matrix or a equivalent matrix for a external use </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">X</td><td>- the nodes coordinates </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">ThermCond</td><td>- The Thermal Conductivity function which determines the isotropic thermal conductivity coeficient </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Stabilization</td><td>- double precision scalar for stabilization uses on the calculations</td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>Planar Element </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a586bca4be8eb2af770295c4e1fe5c8e5"></a><!-- doxytag: member="TriangleElementManipulation::SetMatricesH_l" ref="a586bca4be8eb2af770295c4e1fe5c8e5" args="(this, Matrix, X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatricesH_l </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(matrixsize, matrixsize), intent(out)&#160;</td>
          <td class="paramname"><em>Matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the $H_k$ matrix of the local matrix, $k = x,y$ Matrix of the inner element contribution relative to Temperature. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- The Triangular Element itself </td></tr>
    <tr><td class="paramname">X</td><td>- The Coordinates of the nodes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a50b3ef9cd62514ddc19822d0a23cf0c1"></a><!-- doxytag: member="TriangleElementManipulation::SetMatricesH_l_B_i" ref="a50b3ef9cd62514ddc19822d0a23cf0c1" args="(this, Vector, Neighbours, X, Stabilization, ThermCond)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatricesH_l_B_i </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(matrixsize), intent(inout)&#160;</td>
          <td class="paramname"><em>Vector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), dimension(nsides), intent(in)&#160;</td>
          <td class="paramname"><em>Neighbours</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,2), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), intent(in)&#160;</td>
          <td class="paramname"><em>Stabilization</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>ThermCond</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the matrices $H_{l,B,i}$ comprising the Neighbours contribution to the independent constant vector due to the temperature effect on the flux. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">this</td><td>- the Element on which the computation is being performed </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Vector</td><td>- the Vector on which the computations will be stored </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Neighbours</td><td>- the Element Neighbours whom will give the Stabilized, or Committed, DoF </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">X</td><td>- the Nodes coordinates </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Stabilization</td><td>- double precision scalar Stabilization parameter </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">ThermCond</td><td>- The Thermal Conductivity function for update the values</td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>Planar Element </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a86eb931296af45d4a7319dc5bda571c0"></a><!-- doxytag: member="TriangleElementManipulation::SetMatricesJ_l" ref="a86eb931296af45d4a7319dc5bda571c0" args="(this, Matrix, X)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatricesJ_l </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(matrixsize, matrixsize), intent(out)&#160;</td>
          <td class="paramname"><em>Matrix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the $J_k$ matrix of the local matrix, $k = x,y$ Matrix of the inner element contribution relative to Temperature. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- The Triangular Element itself </td></tr>
    <tr><td class="paramname">X</td><td>- The Coordinates of the nodes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a27fefeca56fced4aa525bf980feb5659"></a><!-- doxytag: member="TriangleElementManipulation::SetMatricesJ_l_B_i" ref="a27fefeca56fced4aa525bf980feb5659" args="(this, Vector, Neighbours, X, Stabilization)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatricesJ_l_B_i </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(matrixsize), intent(inout)&#160;</td>
          <td class="paramname"><em>Vector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), dimension(nsides), intent(in)&#160;</td>
          <td class="paramname"><em>Neighbours</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,2), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), intent(in)&#160;</td>
          <td class="paramname"><em>Stabilization</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the matrices $J_{l,B,i}$ comprising the Neighbours contribution to the independent constant vector due to the flux effect on the temperature. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">this</td><td>- the Element on which the computation is being performed </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Vector</td><td>- the Vector on which the computations will be stored </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Neighbours</td><td>- the Element Neighbours whom will give the Stabilized, or Committed, DoF </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">X</td><td>- the Nodes coordinates </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">Stabilization</td><td>- double precision scalar Stabilization parameter</td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">X</td><td>Planar Element </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a67894321bcfc0e9b8afaf83113f1160e"></a><!-- doxytag: member="TriangleElementManipulation::SetMatrixG_T_B_i" ref="a67894321bcfc0e9b8afaf83113f1160e" args="(Vector, Neighbours, X, Stabilization)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatrixG_T_B_i </td>
          <td>(</td>
          <td class="paramtype">real(kind=8), dimension(matrixsize), intent(inout)&#160;</td>
          <td class="paramname"><em>Vector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), dimension(nsides), intent(in)&#160;</td>
          <td class="paramname"><em>Neighbours</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes,probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>Stabilization</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the matrices $G_{l,B,i}$ comprising the Neighbours contribution to the independent constant vector due to the flux effect on the temperature. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">Vector</td><td>- the Vector on which the computations will be stored </td></tr>
    <tr><td class="paramname">Neighbours</td><td>- the Element Neighbours whom will give the Stabilized, or Committed, DoF </td></tr>
    <tr><td class="paramname">X</td><td>- the Nodes coordinates </td></tr>
    <tr><td class="paramname">Stabilization</td><td>- double precision scalar Stabilization parameter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a95afdc8652309cbfcb2761a27eedbdbc"></a><!-- doxytag: member="TriangleElementManipulation::SetMatrixTriangleElement" ref="a95afdc8652309cbfcb2761a27eedbdbc" args="(this, X, ThermCond, Stabilization)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetMatrixTriangleElement </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(inout)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(nnodes, probdim), intent(in)&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>ThermCond</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), intent(in)&#160;</td>
          <td class="paramname"><em>Stabilization</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Groups the individual constructions of the several components of the Linear Systems Matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- The Triangular Element itself </td></tr>
    <tr><td class="paramname"></td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa106639c5dfecac6346f53342be11ecc"></a><!-- doxytag: member="TriangleElementManipulation::SetNodesTriangularElement" ref="aa106639c5dfecac6346f53342be11ecc" args="(this, Node1, Node2, Node3)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine TriangleElementManipulation::SetNodesTriangularElement </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(out)&#160;</td>
          <td class="paramname"><em>this</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>Node1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>Node2</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>Node3</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set Nodes Indexes of a Triangular Element These are the nodes of the grid. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- the element itself </td></tr>
    <tr><td class="paramname">Nodes</td><td>- the Indexes of the Nodes on the Grid </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a4adc13ead0bf8abc7f18ad46f7bbf483"></a><!-- doxytag: member="TriangleElementManipulation::SolutionErrorRange" ref="a4adc13ead0bf8abc7f18ad46f7bbf483" args="(this)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function TriangleElementManipulation::SolutionErrorRange </td>
          <td>(</td>
          <td class="paramtype">type(<a class="el" href="struct_triangle_element_manipulation_1_1_triangle_element.html">TriangleElement</a>), intent(in)&#160;</td>
          <td class="paramname"><em>this</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the Error range estimation for the current Element. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">this</td><td>- the element </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the maximum error over the components of the Degrees-Of-Freedom vector </dd></dl>

</div>
</div>
<a class="anchor" id="a136c5300b34d7e30bd3447d93db41568"></a><!-- doxytag: member="TriangleElementManipulation::TriangularPhi" ref="a136c5300b34d7e30bd3447d93db41568" args="(i, eta)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">pure real(kind=8) function TriangleElementManipulation::TriangularPhi </td>
          <td>(</td>
          <td class="paramtype">integer, intent(in)&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=8), dimension(3), intent(in)&#160;</td>
          <td class="paramname"><em>eta</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Base functions on Triangular Linear coordinate $( , ,  )$ system. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>- the index of the base function </td></tr>
    <tr><td class="paramname">eta</td><td>- double precision 3d vector of the point on which the base is calculated </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>v - double precision scalar calculated value </dd></dl>

</div>
</div>
<hr/>The documentation for this module was generated from the following file:<ul>
<li>TrianguleElement.f90</li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="class_triangle_element_manipulation.html">TriangleElementManipulation</a>      </li>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>


    <li class="footer">Generated on Wed May 23 2012 14:51:36 for DiscontinuousGalerkin by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.5.1 </li>
   </ul>
 </div>


</body>
</html>
